package tt.dz.egobus.servicemanager.service;

import tt.dz.egobus.api.ResponseBack;
import tt.dz.egobus.api.page.Page;
import tt.dz.egobus.api.page.Pageable;
import tt.dz.egobus.bean.comment.TagBack;
import tt.dz.egobus.bean.comment.TagRequest;

import java.util.List;

/**
 * @author Anson
 * @date 17-4-1
 * @name 订单标签web服务管理通道
 * @since 1.0.3
 */
public interface OrderTagManagerService {

    /**
     * 添加订单评论标签
     *
     * @param request 添加标签的请求参数
     * @return 添加成功后的标签
     * @date 2017-08-10
     * @since 1.0.6
     */
    ResponseBack<TagBack> addTag(TagRequest request);

    /**
     * 根据不同的星级获取不同的标签
     *
     * @param starLevel 评论的星级
     * @return 不同的标签
     * @date 2017-08-10
     * @since 1.0.6
     */
    ResponseBack<List<TagBack>> getTagByLevel(int starLevel);

    /**
     * 修改评论标签
     *
     * @param tagId 标签的id
     * @param value 标签的值
     * @return 修改后的标签
     */
    ResponseBack<TagBack> updateTag(String tagId, String value);

    /**
     * 根据id删除评论的标签
     *
     * @param tagId 标签的id
     * @return
     * @date 20107-08-10
     * @since 1.0.6
     */
    ResponseBack<Boolean> deleteTag(String tagId);

    /**
     * 分页获取标签
     *
     * @param pageable 分页过滤器
     * @return
     * @date 2017-08-11
     * @since 1.0.6
     */
    ResponseBack<Page<TagBack>> queryPage(Pageable pageable);
}
